package 炫彩App类

import (
	window "gitee.com/go_888/xcgui/xcgui/window"
	xcc "gitee.com/go_888/xcgui/xcgui/xcc"
)

// NewWindow 窗口_创建.
//
// x: 窗口左上角x坐标.
//
// y: 窗口左上角y坐标.
//
// cx: 窗口宽度.
//
// cy: 窗口高度.
//
// pTitle: 窗口标题.
//
// hWndParent: 父窗口.
//
// XCStyle: 窗口样式: xcc.Window_Style_.
func X创建窗口(x, y, cx, cy int32, 标题 string, 父窗口句柄 uintptr, XC样式 xcc.X窗口样式) *window.Window {
	return window.X创建窗口(x, y, cx, cy, 标题, 父窗口句柄, XC样式)
}

// NewWindowEx 窗口_创建扩展.
//
// dwExStyle: 窗口扩展样式. xcc.WS_EX_ .
//
// dwStyle: 窗口样式. xcc.WS_ .
//
// lpClassName: 窗口类名.
//
// x: 窗口左上角x坐标.
//
// y: 窗口左上角y坐标.
//
// cx: 窗口宽度.
//
// cy: 窗口高度.
//
// pTitle: 窗口名.
//
// hWndParent: 父窗口.
//
// XCStyle: 窗口样式, xcc.Window_Style_.
func X创建窗口EX(dwExStyle xcc.WS_EX_, dwStyle xcc.WS_, lpClassName string, x, y, cx, cy int32, 标题 string, 父窗口句柄 uintptr, XC样式 xcc.X窗口样式) *window.Window {
	return window.X创建窗口EX(dwExStyle, dwStyle, lpClassName, x, y, cx, cy, 标题, 父窗口句柄, XC样式)
}

// NewWindowByAttach 窗口_附加窗口, 返回窗口对象.
//
// hWnd: 要附加的外部窗口句柄.
//
// XCStyle: 窗口样式: xcc.Window_Style_.
func X窗口附加(窗口句柄 uintptr, XC样式 xcc.X窗口样式) *window.Window {
	return window.X窗口附加窗口(窗口句柄, XC样式)
}

// NewWindowByHandle 从句柄创建窗口对象.
//
// hWindow: 窗口资源句柄.
func X创建窗口并按句柄(窗口句柄 int) *window.Window {
	return window.X创建窗口并按句柄(窗口句柄)
}

// NewWindowByLayout 从布局文件创建窗口对象, 失败返回nil.
//
// pFileName: 布局文件名.
//
// hParent: 父对象句柄.
//
// hAttachWnd: 附加窗口句柄, 附加到指定的窗口, 可填0.
func X创建窗口并按布局文件(布局文件名 string, 父对象句柄 int, 附加窗口句柄 uintptr) *window.Window {
	return window.X创建窗口并按布局文件(布局文件名, 父对象句柄, 附加窗口句柄)
}

// NewWindowByLayoutZip 从压缩包中的布局文件创建窗口对象, 失败返回nil.
//
// pZipFileName: zip文件名.
//
// pFileName: 布局文件名.
//
// pPassword: zip密码.
//
// hParent: 父对象句柄.
//
// hAttachWnd: 附加窗口句柄, 附加到指定的窗口, 可填0.
func X创建窗口并按布局zip(zip文件名 string, 布局文件名 string, 密码 string, 父对象句柄 int, 附加窗口句柄 uintptr) *window.Window {
	return window.X创建窗口并按压缩包布局文件(zip文件名, 布局文件名, 密码, 父对象句柄, 附加窗口句柄)
}

// NewWindowByLayoutZipMem 从内存压缩包中的布局文件创建窗口对象, 失败返回nil.
//
// data: 布局文件数据.
//
// pFileName: 布局文件名.
//
// pPassword: zip密码.
//
// hParent: 父对象句柄.
//
// hAttachWnd: 附加窗口句柄, 附加到指定的窗口, 可填0.
func X创建窗口并按布局文件内存zip(zip字节集 []byte, 布局文件名 string, zip密码 string, 父对象句柄 int, 附加窗口句柄 uintptr) *window.Window {
	return window.X创建窗口并按内存压缩包布局文件(zip字节集, 布局文件名, zip密码, 父对象句柄, 附加窗口句柄)
}

// NewWindowByLayoutStringW 从布局文件字符串W创建窗口对象, 失败返回nil.
//
// pStringXML: 字符串.
//
// hParent: 父对象.
//
// hAttachWnd: 附加窗口句柄, 附加到指定的窗口, 可填0.
func X创建窗口并按布局文件文本W(xml文本 string, 父对象句柄 int, 附加窗口句柄 uintptr) *window.Window {
	return window.X创建窗口并按布局文件文本W(xml文本, 父对象句柄, 附加窗口句柄)
}

// NewWindowByLayoutEx 从布局文件创建窗口对象, 失败返回nil.
//
// pFileName: 布局文件名.
//
// pPrefixName: 名称(name)前缀, 可选参数; 给当前布局文件中所有name属性增加前缀, 那么name属性值为: 前缀 + name.
//
// hParent: 父对象句柄.
//
// hParentWnd: 父窗口句柄HWND, 提供给第三方窗口使用.
//
// hAttachWnd: 附加窗口句柄, 附加到指定的窗口, 可填0.
func X创建窗口并按布局文件EX(布局文件名, 名称 string, 父对象句柄 int, 父窗口句柄HWND, 附加窗口句柄 uintptr) *window.Window {
	return window.X创建窗口并按布局文件EX(布局文件名, 名称, 父对象句柄, 父窗口句柄HWND, 附加窗口句柄)
}

// NewWindowByLayoutZipEx 从压缩包中的布局文件创建窗口对象, 失败返回nil.
//
// pZipFileName: zip文件名.
//
// pFileName: 布局文件名.
//
// pPassword: zip密码.
//
// pPrefixName: 名称(name)前缀, 可选参数; 给当前布局文件中所有name属性增加前缀, 那么name属性值为: 前缀 + name.
//
// hParent: 父对象句柄.
//
// hParentWnd: 父窗口句柄HWND, 提供给第三方窗口使用.
//
// hAttachWnd: 附加窗口句柄, 附加到指定的窗口, 可填0.
func X创建窗口并按布局文件zipEx(zip文件名 string, 布局文件名 string, zip密码, 名称 string, 父对象句柄 int, 父窗口句柄HWND, 附加窗口句柄 uintptr) *window.Window {
	return window.X创建窗口并按zip布局文件EX(zip文件名, 布局文件名, zip密码, 名称, 父对象句柄, 父窗口句柄HWND, 附加窗口句柄)
}

// NewWindowByLayoutZipResEx 从RC资源zip压缩包中的布局文件创建窗口对象, 失败返回nil.
//
// id: RC资源ID.
//
// pFileName: 布局文件名.
//
// pPassword: zip密码.
//
// pPrefixName: 名称(name)前缀, 可选参数; 给当前布局文件中所有name属性增加前缀, 那么name属性值为: 前缀 + name.
//
// hParent: 父对象句柄.
//
// hParentWnd: 父窗口句柄HWND, 提供给第三方窗口使用.
//
// hAttachWnd: 附加窗口句柄, 附加到指定的窗口, 可填0.
//
// hModule: 模块句柄, 可填0.
func X创建窗口并按布局文件资源zipEX(RC资源ID int32, 布局文件名, zip密码, 名称前缀 string, 父对象句柄 int, 父窗口句柄HWND, 附加窗口句柄, 模块句柄 uintptr) *window.Window {
	return window.X创建窗口并按RC资源zip布局文件EX(RC资源ID, 布局文件名, zip密码, 名称前缀, 父对象句柄, 父窗口句柄HWND, 附加窗口句柄, 模块句柄)
}

// NewWindowByLayoutZipMemEx 从内存压缩包中的布局文件创建窗口对象, 失败返回nil.
//
// data: 布局文件数据.
//
// pFileName: 布局文件名.
//
// pPassword: zip密码.
//
// pPrefixName: 名称(name)前缀, 可选参数; 给当前布局文件中所有name属性增加前缀, 那么name属性值为: 前缀 + name.
//
// hParent: 父对象句柄.
//
// hParentWnd: 父窗口句柄HWND, 提供给第三方窗口使用.
//
// hAttachWnd: 附加窗口句柄, 附加到指定的窗口, 可填0.
func X创建窗口并按布局文件内存zipEx(布局文件数据 []byte, 布局文件名 string, zip密码, 名称 string, 父对象句柄 int, 父窗口句柄HWND, 附加窗口句柄 uintptr) *window.Window {
	return window.X创建窗口并按内存压缩包布局文件EX(布局文件数据, 布局文件名, zip密码, 名称, 父对象句柄, 父窗口句柄HWND, 附加窗口句柄)
}

// NewWindowByLayoutStringWEx 从布局文件字符串W创建窗口对象, 失败返回nil.
//
// pStringXML: 字符串.
//
// pPrefixName: 名称(name)前缀, 可选参数; 给当前布局文件中所有name属性增加前缀, 那么name属性值为: 前缀 + name.
//
// hParent: 父对象.
//
// hParentWnd: 父窗口句柄HWND, 提供给第三方窗口使用.
//
// hAttachWnd: 附加窗口句柄, 附加到指定的窗口, 可填0.
func X创建窗口并按布局文件文本WEx(xml文本, 名称 string, 父对象句柄 int, 父窗口句柄HWND, 附加窗口句柄 uintptr) *window.Window {
	return window.X创建窗口并按布局文件文本WEX(xml文本, 名称, 父对象句柄, 父窗口句柄HWND, 附加窗口句柄)
}

// NewWindowByName 从name创建对象, 失败返回nil.
//
// name: name名称.
func X创建窗口并按名称(name名称 string) *window.Window {
	return window.X创建窗口并按名称(name名称)
}

// NewWindowByUID 从UID创建窗口对象, 失败返回nil.
//
// nUID: UID值.
func X创建窗口并按UID(UID int32) *window.Window {
	return window.X创建窗口并按UID(UID)
}

// NewWindowByUIDName 从UID名称创建对象, 失败返回nil.
//
// name: name名称.
func X创建窗口并按UID名称(名称 string) *window.Window {
	return window.X创建窗口并按UID名称(名称)
}
